package com.erp.order.purchasing.dao;

import com.erp.hr.base.dao.BaseDao;
import com.erp.order.purchasing.model.PurchasingRequisition;
import java.util.List;
import java.util.Set;

/**
 * 采购申请 持久层
 * @Author: syz
 * @blame syz
 * @CreateTime: 2021/4/6
 */
public interface PurchasingRequisitionDao extends BaseDao<PurchasingRequisition> {

    /**
     * 根据计划id获取详情集合
     * @param id 计划id
     * @return 详情集合
     */
    List<PurchasingRequisition> getListByPurchasingId(Long id);

    /**
     * 根据申请类型获取时间范围内的申请数量
     * @param type 申请类型
     * @return 时间范围内的申请数量
     */
    Integer getRequisitionCount(String type);

    /**
     * 判断部门当月是否已提交月采购申请
     * @param staffCodes 部门下员工编码集合
     * @return 部门当月是否已提交月采购申请
     */
    boolean isResubmit(List<String> staffCodes);

    /**
     * 根据id集合获取采购申请集合
     * @param ids id集合
     * @return 采购申请集合
     */
    List<PurchasingRequisition> getListByIds(Set<Long> ids);

}